Camera capable of correcting camera-shake

ABSTRACT

A camera comprises an angular velocity sensor for detecting camera-shake. The angular velocity sensor takes a certain time to be stabilized after its operation is started. When correction of camera-shake is required during the certain period, it is displayed that correction of camera-shake is not possible. 
     As a result, a photographer using the camera with the camera-shake detection sensor refrains from photographing when correction of camera-shake is not possible.

This application is a divisional of application Ser. No. 08/062,950,filed May 18, 1993, now U.S. Pat. No. 5,416,554, which is a continuationof application Ser. No. 07/581,887, filed Sep. 13, 1990, now U.S. Pat.No. 5,266,981.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention generally relates to cameras, and moreparticularly, to a camera having a camera-shake detector which detectscamera-shake occurring when a picture is taken.

2. Description of the Related Arts

Some conventional cameras have been proposed with camera-shake detectingsensors which detect camera-shake to prevent pictures being blurred. Aconventional camera provided with a camera-shake detecting sensorcomprises a camera-shake detecting sensor, a correcting device forcorrecting camera-shake amount in response to output of detection, and adisplay unit for making display of a warning that a picture is beingblurred.

A conventional camera which can correct camera-shake is responsive tooutput of camera-shake detecting sensor for correcting camera-shakeamount so as to allow unblurred pictures to be taken and at the sametime, display that unblurred picture are being taken.

Conventional cameras with camera-shake sensors are configured asdescribed above. Therefore, the conventional cameras with camera-shakesensors make correction of camera-shake and at the same time, give adisplay that camera-shake is corrected.

However, it takes time for the camera-shake sensors to become able toprovide stable output of camera-shake detection after the sensors areturned on. Accordingly, the output of the sensors can not be used untilstabilized. Therefore, pictures taken before the sensors are stabilizedcan not be subjected to camera-shake correction. As a result, even thosecameras provided with camera-shake-sensors and correction mechanism mayproduce blurred pictures without operating such mechanism in such acase.

SUMMARY OF THE INVENTION

An object of the present invention is to take reliably unblurredpictures using a camera with a camera-shake sensor.

Another object of the present invention is to eliminate unnecessarycontinuous driving of a taking lens in a camera with a camera-shakesensor.

Still another object of the present invention is to more preciselycorrect camera-shake in a camera with a camera-shake sensor.

According to the present invention, the objects described above can beachieved by a camera comprising the following elements. That is, acamera according to the present invention comprises a camera-shakedetector for detecting camera-shake occurring when a picture is taken, acorrection device for correcting camera-shake in response to output ofthe camera-shake detector, and a warning display unit for displaying awarning when the camera-shake detector is not operating.

Camera-shake detecting means can not detect camera-shake amountimmediately after a signal for starting its operation is entered.Therefore, when such a camera-shake detector is in an inoperable state,a warning that the camera can not make camera-shake correction isdisplayed at a warning display portion. Then, a photographer canrecognize that the camera-shake correction device is not operating andthus, does not start photographing until output of the camera-shakesensor is stabilized. As a result, it becomes possible to take reliablyunblurred pictures using the camera with a camera-shake sensor.

In a camera according to the present invention, lens driving forcamera-shake correction is detected when the camera-shake amount islarge in the out-of-focus state. When the camera-shake amount is largein the out-of-focus state, the in-focus state can not be easily realizedeven if a taking lens is driven. According to the present invention,driving of a taking lens is inhibited when the camera-shake amount islarge in the out-of-focus state. Therefore, unnecessary driving of thetaking lens is eliminated in the camera with a camera-shake sensor.

According to the present invention, the camera-shake amount of a movingobject is estimated using a plurality of camera-shake data. Accordingly,a precise camera-shake correction can be made in a camera with acamera-shake sensor even when an object is in motion.

The foregoing and other objects, features, aspects and advantages of thepresent invention will become more apparent from the following detaileddescription of the present invention when taken in conjunction with theaccompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic perspective view of a camera system according tothe present invention.

FIG. 2 is a circuit block diagram of a camera body according to thepresent invention.

FIGS. 3 to 7 are flow chart diagrams showing operation of the camerasystem according to the present invention.

FIGS. 8A and 8B are diagrams showing performance of a camera-shakesensor according to the present invention.

FIGS. 9A to 13C are flow chart diagrams for explaining operation of acamera according to the present invention.

FIGS. 14A and 14B are diagrams showing an AE program.

FIG. 15 is a flow chart diagram for explaining operation of a cameraaccording to the present invention.

FIGS. 16A and 16B are diagrams showing contents displayed at the displayportion and in the finder of a camera body.

FIG. 17 and 17B are flow chart diagrams for explaining operation of acamera system according to the present invention.

FIGS. 18 to 23 are circuit block diagrams of a camera-shake detectorapplicable to the present invention and flow chart diagrams of amicrocomputer controlling the circuit.

FIG. 24 is a circuit diagram showing a the electronic flash device STcircuit.

FIG. 25 is a circuit diagram showing circuit structure of lens.

FIGS. 26 and 27 are flow charts diagrams for explaining operation of amicrocomputer on the side of lens.

FIG. 28 is a diagram showing results of a simulated correction ofcamera-shake.

FIGS. 29 and 30 are diagrams showing driving mechanism of a correctionlens which performs correction of camera-shake according to the presentinvention.

FIG. 31 is a flow chart diagram for explaining operation of the drivingmechanism.

DESCRIPTION OF THE PREFERRED EMBODIMENT

In the following, embodiments of the present invention will be describedwith reference to the accompanying drawings. Meanwhile, the descriptionbelow is made not only on system of the present invention but on theentire system including those parts or functions that have no directrelation with the present invention.

FIG. 1 is a schematical perspective view of a camera having acamera-shake detecting sensor according to the present invention.Referring to FIG. 1, the camera according to the present inventioncomprises camera body 1 and lens 2 interchangeably provided to camerabody 1. Camera body 1 comprises X direction camera-shake sensor Sx fordetecting camera-shake amount in the X direction in the figure, Ydirection camera-shake sensor Sy for detecting camera-shake amount inthe Y direction, and display portion DISP₁ for giving a warning when Xdirection and Y direction camera-shake sensors Sx and Sy are not in theoperating state.

FIG. 2 is a block diagram showing a circuit of a camera according to thepresent embodiment. Referring to FIG. 1, the camera according to thepresent invention comprises a microcomputer μC which controls the entirecamera and performs various operations, and has focus detecting circuitAF_(CT) connected thereto. Focus detecting circuit Af_(CT) comprisesCCD, an integration control circuit, and an A/D converting circuit, andgets information of an object from a focus detection area as will bedescribed later and A/D converts the information to output the result tomicrocomputer μC. The main parts shown in the circuit block of a cameraaccording to the present invention will be described below.

Brightness measuring circuit LM measures brightness in two areasdescribed later and A/D converts the measured brightness values tooutput the results to microcomputer μC as brightness information.Display control circuit DISPC receives a display control signal frommicrocomputer μC to display a predetermined information in displayportions DISP₁ on the upper surface of the camera body and DISP₂ in afinder. Camera-shake detector BL detects camera-shake as will bedescribed later in detail.

Microcomputer μC is connected to electronic flash device ST, brightnessadjusting circuit STC which receives light reflected from an objectthrough an unshown taking lens at an emission of flash and stops theemission of flash when an appropriate exposure amount is reached, andlens circuit LE which outputs information specific to an interchangeablelens to microcomputer μC and drives an actuator for correction (a pulsemotor in the present embodiment) as will be described later, based oncorrection amount information for camera-shake correction received fromthe camera. Further, microcomputer μC is connected to lens drivingcontrol circuit LECN for driving a taking lens based on focus detectinginformation, shutter control circuit TV_(CT) for controlling shutterbased on a control signal from microcomputer μC, aperture controlcircuit AV_(CT) for controlling aperture based on a control signal frommicrocomputer μC, motor control circuit, MD for winding and controllinga film based on a control signal from microcomputer μC, battery Eserving as power source, reverse-current preventing diode D₁,large-capacity condenser C_(BU) for backing up microcomputer μC, powersupply transistor Tr1 for supplying power to part of the above-describedcircuits, field-effect transistor FET (Tr2) for supplying power to amotor for camera-shake correction.

In the following, description will be made on switches. Brightnessmeasuring switch S1 is used to perform various operations of camera (forexample, brightness measuring and display of various data) includingautomatic focusing operation (referred to as "AF" hereinafter), andturned on when an unshown release button is depresssed at a firststroke. When light measuring switch S1 is turned on, microcomputer μCexecutes an interruption flow INT₁ shown in FIG. 9A, as will bedescribed later. Main switch S_(M) puts the camera in the operable statewhen turned on. When this switch is turned on/off, interruption SMINTdescribed later is performed. Switch S_(IHBL) is one for inhibitingcamera-shake correction and switch S_(SP) is one for switchingbrightness measuring modes (spot/average). Release switch S2 is handledwhen a picture is taken, and turned on when the release button isdepressed at a second stroke (deeper than the first stroke). Switch X isa so-called X contact, and turned on when a travel of preceding shuttercurtain is completed and turned off when an unshown release member ischarged.

FIG. 3 is a flow chart diagram showing the interruption SMINT which isperformed when main switch S_(M) is turned on/off. Referring to FIG. 3,when this interruption is to be made, first, microcomputer μC resets allflags and data (to 0) (step #5) (in the following, the designation ofstep will not be repeated). Then, determination is made as to whethermain switch S_(M) has been turned on or not. When the switch has beenturned on, data is entered from the lens (#10 and #15). In thisembodiment, the data includes focal length f, coefficient K_(L) forconverting defocus amount into lens driving amount, object distance DV,fully open aperture value AV₀ and a data representing presence orabsence of lens.

FIG. 4 is a flow chart diagram showing the subroutine of data input at#15 shown in FIG. 3. Referring to FIG. 4, in the subroutine of datainput, data indicative of mode (I) (data input) is set (#180), potentialat terminal CSLE is set to the L level (#182), the data set as describedabove is output (#185), the above-described data such as focal length fare entered from the lens (#190), and then potential at terminal CSLE isset to the H level (#195). It is to be noted that the mode (I) is acontrol mode for the lens, subroutine LESI0 (I) denoted in FIG. 4represents data input to the camera, and LESI0 (II) shown in FIG. 5 is amode for outputting data from the camera.

Turning back to the flow chart of FIG. 3, determination is made, basedon the data entered from the lens, as to whether a lens has been mountedor not (#20). When one has been mounted, potential at terminal PW1 isset to the H level so as to turn transistor Tr2 on (#25). Thus, power issupplied to the driving motor for camera-shake correction. Data forresetting a camera-shake correction is set and then the data is outputto the lens according to subroutine LESI0 (II) (#35). The output dataincludes shake amount in the X direction ΔX, shake amount in the Ydirection ΔY and a data representing mode (reset/release/OFF).

Subroutine LESI0 (II) for outputting data from the camera body to thelens will be described with reference to FIG. 5. First, data of mode (I)is reset (#200), voltage at terminal CSLE is set to the L level (#202),and the above-described mode signal, i.e., mode (II) is output (#205).Thereafter, the above-described output data is output (#210), potentialat terminal CSLE is set to the H level (#215), and then the programreturns to the main routine.

Subsequently, the operation proceeds to #42 in FIG. 3 (even in the casethat determination has been made at #20 that lens is absent, the programproceeds up to this step), timer T is reset to start, a timer flag F1indicative thereof is set, and then potential at terminal CHST is set tothe H level to start boosting of the electronic flash device ST (#40 to#45). Thereafter, determination is made as to whether correction inhibitswitch S_(IHBL) for inhibiting camera-shake correction has been turnedon or not (#50). When the correction inhibit switch S_(IHBL) has beenturned on (correction is inhibited), data for inhibiting display is set(#55) and the data is output to the display control circuit (#60) so asto turn off the display indicating that camera-shake correction is beingmade. Thereafter, the system waits until value of timer T reaches T2(about 5 minutes) (#65), and then the program proceeds to step #125. Atstep #125, the boosting of the electronic flash device ST is stopped,potential at terminal CHST is set to the L level, data for turning on anangular velocity monitor is reset and a signal indicative thereof isoutput to camera-shake detector BL to turn off the monitor (#125 to#135). Then, power supply transistors Tr2 and Tr1 are turned off,display data is set, and a signal indicative thereof is output to thedisplay circuit to turn off the display. Thereafter, a timer flag (timerF) is reset and then the microcomputer stops its operation (#140 to#148).

At step #50, when the switch for inhibiting correction has not beenturned on, the program proceeds to step #70, where data for turning onthe angular velocity monitor is set. Then, a sensor mode A is selectedand data indicative thereof is set and output to camera-shake detectorBL (#70 to #80). Meanwhile, there are two sensor modes A and B. In thesensor mode A, the angular velocity monitor for detecting camera-shakeis turned on only for a predetermined time, and in the sensor mode B,the angular velocity sensor is always in the on-state. The purposes ofproviding the two sensor modes are to reduce consumption current andalso to make the angular velocity sensor work-only when it is requiredas in taking a picture.

Next, contents of the subroutine BLSIO (I) shown at step #80 will bedescribed, where data is output-to camera-shake detector BL. The dataoutput at this step is as follows.

angular velocity monitor: ON/OFF

sensor mode: A, B, OFF

focal length: f

object distance data: DV

FIG. 6 is a flow chart diagram showing the subroutine. Referring to FIG.6, in the subroutine BLSIO (I) where data is output to the camera-shakedetector, first, data mode is set to mode (I) for data input, potentialon terminal CSBL is set to the L level (#220 and #222), and then thedata is output (#225). Subsequently, data indicative of whether theabove-mentioned angular velocity monitor has been turned on/off isoutput, potential on terminal CSBL is set to the H level, and then theprogram returns to the main routine (#230 and #235).

Returning now to the flow chart shown in FIG. 3, the system waits untilthe angular velocity sensor is stabilized to start measuring and thendata therefor is entered (#85 and #90). The data output from the camerais as follows.

ΔX_(BL) : correction amount in the X direction

ΔY_(BL) : correction amount in the Y direction : camera-shake amount islarge/not large

FIG. 7 is a flow chart diagram showing the subroutine BLSIO (II) at step#90 shown in FIG. 3, where camera-shake amount is output from camera tolens. Referring to FIG. 7, in the subroutine BLSIO (II), data of mode(I) is reset (returning to mode (II) indicative of data output),potential on terminal CSBL is set to the L level and data indicativethereof is output (#240 to #245). Subsequently, data from camera-shakedetector BL is entered in microcomputer μC, potential on terminal CSBLis set to the H level, and then the program returns to the main routine(#250 and #255).

Turning back to the flow chart shown in FIG. 3, determination is made asto whether the above-mentioned timer T indicates no less than T1 (about7 seconds, corresponding to the time taken for the angular velocitysensor to be stabilized) or not. When T≧T1, it is determined that theangular velocity sensor has been stabilized, and then a flag indicativethereof (detection OKF) is set, data indicative of a WAIT display isreset, and data is output to the display circuit (#100 to #110).

The reason why the system waits for the angular. velocity sensor to bestabilized is that when power is supplied to the sensor, datarepresenting a correct shake amount can not be output immediately. Thisis true particularly when a vibration-type angular velocity sensor isemployed.

In FIGS. 8A and 8B, there are shown times required for output of theangular velocity sensor to be stabilized after power is turned on. InFIG. 8A, it takes about one second for the stabilization of output afterpower is turned on, while in the example shown in FIG. 8B, it takesabout 8 seconds for the stabilization of output. In consideration of thelevel to be used, a maximum waiting time of 7 seconds is set in thepresent invention.

Turning back to the flow chart shown in FIG. 3, when T=T2 in timer,detection OK flag OKF is reset to turn off the camera and the flowfollowing the above-described step 125 is executed (#115 and #125).

At step #95, when timer T has not yet reached T1, the program proceedsto step #125 and the system waits for 500 m seconds. Thereafter, t ismade equal to T1-T, data of WAIT display is set and the above-mentionedt and the data of WAIT display are output to the display controlcircuit, and then the program proceeds to step #75 (#115 to #170).

As described above in connection with steps #95 to #110 and #115 to#170, according to the present invention, a display that photographingis "waited" is made after the turning-on of main switch SM until time T1taken for the angular velocity sensor to be stabilized has passed. Whenthe time taken for the angular velocity sensor to become stable haspassed, the display is reset. As a result, a photographer can determinewhether the angular velocity sensor for detecting camera-shake isoperating or not. Therefore, when the camera-shake detecting sensor isnot operating, pictures are not taken, thus preventing blurred picturesbeing taken.

Subsequently, a program executed when brightness measuring switch S1 isturned on will be described below. FIG. 9A is a flow chart diagramshowing the program executed when brightness measuring switch S1 isturned on. First, potential on terminal FLOK for indicating that flashemission is possible is set to the L level, and all display data isreset (#260 and #265). Then, determination is made as to whether mainswitch S_(M) has been turned on or not. If the switch has been turnedoff, microcomputer μC stops (#275). If the switch has been turned on,transistor Tr1 is turned on to supply power to brightness measuring-andAF-circuits and the like, flag AFEF indicating the in-focus state andflag MDF indicating that camera-shake amount is large after the in-focusstate is achieved are reset, and then determination is made as towhether the correction inhibit switch has been turned on or not (#280 to#290). When correction inhibit switch S_(IHBL) has been turned on atstep #290, the program proceeds to step #475 to set display inhibit dataand further proceeds to step #395 to execute the flow followingthereafter (#475), details of which will be described later.

When the correction inhibit switch has been turned off at step #290, theprogram proceeds to step #295 and determination is made as to whether aflag indicating that the angular velocity sensor can perform detection,or detection OK flag OKF has been set or not. When the flag has beenset, the program proceeds to step #300 to set data of monitor ON.Subsequently, a flag indicating that the sensor is in the A mode is set,data indicative thereof is output to camera-shake detector BL, and thenthe system waits for a certain time (10 m second). Thereafter, data ofcamera-shake amount is entered from the above-mentioned detector BL andthe program proceeds to step #395 (#305 to #320). From the originalpurpose of correcting camera-shake which takes place at the time ofexposure, operation of the camera-shake detecting sensor may not bestarted until release switch S2 is turned on. However, if the switch ofthe camera-shake detector is turned on before release switch S2 isturned on, as shown in this flow, its rising time can be reduced. Whenthe detection OK flag indicating that the angular velocity sensor canperform detection has not been set at step #295, i.e., when the sensorhas not yet been stabilized, data indicating that the monitor is ON anddata indicating that the sensor is in the A mode are set and output tocamera-shake detector BL to reset display inhibit data, and then data isentered from lens (#330 to #345). It is determined from the entered datawhether a lens has been mounted or not. When a lens has been mounted,transistor Tr2 is turned on to supply power to the motor for correctionon the lens side, lens mode is reset, information indicative thereof isoutput to the lens, and then the program proceeds to step #370 (#350 to#365). Even when no lens has been mounted at step #360, the programproceeds also to step #370.

At step #375, determination is made as to whether the timer flag hasbeen set or not. When the flag has been set, the program proceeds tostep #376. When the timer flag has not been set, the timer-flag is set,timer T is reset to start, and then the program proceeds to step #376(#370 to #374). At step #376, determination is made as to whether timerT has reached a value no less than T1 or not. When T1≧T1, the detectionOK flag is set, WAIT display is reset, and the program proceeds to step#395 (steps #376 to #385). On the other hand, when T<T1, it isdetermined that the angular velocity sensor has not been yet stabilized.Then, operation is made to make t equal to T1-T, WAIT display data isset, and then the program proceeds to step #395.

At step #395, data is entered from lens, brightness is measured, andthen AF operation is performed. Exposure operation (AE operation) isperformed based on the measured brightness data to stop down aperture,and a shutter speed is found (#400 to #410). Those respectivesubroutines will be described later.

As described above in connection with steps #376 to #390, according tothe present invention, also in an interruption flow where the brightnessmeasuring switch is turned on, WAIT display is made at the displayportion of camera after the turning-on of the brightness measuringswitch until the angular velocity sensor is stabilized, and after thetime taken for the angular velocity sensor to be stabilized has passed,the display is reset. Therefore, as previously described, before thecamera-shake detecting sensor becomes stable, it is displayed that thecamera-shake detecting sensor has not been yet stabilized. Accordingly,a photographer does not take pictures in such a state. As a result, acamera capable of photographing unblurred pictures can be provided.

Meanwhile, according to the present invention, as shown at step #325,when the detection OK flag indicating that camera-shake can be detectedrepresents NO, ON data is set for the camera-shake detecting monitor.Accordingly, at the same time that the brightness measuring switch isturned on, the sensor circuit of the camera-shake detector is turned on.

Subsequently, the brightness measuring subroutine shown at step #400 inFIG. 9 will be described with reference to FIG. 10. In FIG. 11, there isshown a brightness measuring pattern as viewed from a finder. As shownin FIG. 11, the brightness measuring pattern is composed of two areas;one is spot brightness measuring area BV_(SP) at the center and theother is peripheral brightness measuring area BV_(AM) : surrounding theformer. Brightness values measured from the respective areas arerepresented as BV_(SP) and BV_(AM).

Referring to FIG. 10, data of values BV_(SP) and BV_(AM) measured in therespective areas are entered and determination is made as to whether thespot brightness measuring switch has been turned on or not. When theswitch has not been turned on, the measured value BV is set to (BV_(AM)+BV_(SP))/2 and then the program returns to the main routine (#480 to#490). On the other hand, when the spot brightness measuring switch hasbeen turned on at step #485, determination is made, based on the dataentered from camera-shake detector BL, as to whether the camera-shakeamount is large or not. When the camera-shake amount is large, the datais not updated but the program returns to the main routine. When thecamera-shake amount is small,BV_(SP) is substituted for the measuredvalue BV and then the program returns to the main routine (#495 to#500). The reason why the data is not updated in the case of a largecamera-shake amount is that deviation of measured values should beprevented which might take place when a brightness measuring range isshifted due to a momentary camera-shake.

Subsequently, the AF subroutine shown at step #405 in FIG. 9 will bedescribed below. FIG. 12 is a flow chart diagram showing contents of theAF subroutine. Referring to FIG. 12, first, integration of CCD is done,data is entered, and then current defocus amount DF1 is calculated basedon the entered DF amount for driving lens (#505 to #515). At step #520,determination is made as to whether flag MDF indicating thatcamera-shake amount is large after the in-focus state is achieved hasbeen set on or not. If MDF has been set, the program returns immediatelyto the main routine (#520). Thus, when the camera-shake amount afterachievement of the in-focus state is large, determination of a movingobject is inhibited and AF lock is made. This is because AF informationcan not be relied on when the camera-shake amount is large.

On the other hand, when flag MDF has not been set at step #520,determination is made as to whether flag AFEF indicative of the in-focusstate has been set or not (#525). When the flag has not been set,determination is made as to whether camera-shake amount is large or not(#530). When the camera-shake amount is large, reliability of thedefocus amount is low. Therefore, the program returns to the mainroutine without driving lens. When the camera-shake amount is not largeat step #530, the obtained defocus amount DF1 is set as defocus amountDF for lens drive. When the defocus amount is not below a predeterminedvalue, lens drive amount is taken by multiplying the DF amount bycoefficient for converting lens drive amount so as to perform lensdrive, and then the program returns to the main routine (#535, #540,#555 and #560). When the defocus amount DF for lens drive is below thepredetermined value at step #540, flag AFEF indicative of the in-focusstate is set, N is set to 0, and then the program returns to the mainroutine (#545 and #550).

When flag AFEF indicative of the in-focus state has been set at step#525, the program proceeds to step 570 and the current defocus amountDF1 is changed to DF2. Thereafter, determination is made, based on thedata entered from camera-shake detector BL, as to whether thecamera-shake amount is large or not (#580). When the camera shake amountis large at step #580, flag MDF indicative thereof is set and theprogram returns to the main routine (#585). On the other hand, when thecamera-shake amount is not large at step #580, determination is made asto whether N is no less than 2 or not. If N<2, it means non-input orinput of one data indicative of the in-focus state. Then, sincedetermination of a moving object can not be made, the program returns tothe main routine (steps #587 and #590). If N≧2 at step #587, differencebetween the defocus amounts of the previous and current times is foundand then determination is made as to whether the difference is largerthan a predetermined value (K ΔDF) or not. If the difference is notlarger than the predetermined value, the object is not in motion.Therefore, the program returns to the main routine (#595 and #600). Whenthe difference is larger than the predetermined value, the defocusamount is set as DF=DF1+ΔDF and the program proceeds to step #555 todrive lens (#605).

Subsequently, the subroutine of AE operation shown at step #430 in FIG.9 and an example of AE program will be described with reference to FIGS.13A to 14B. In the present embodiment, an object is identified based onmagnification data as follows.

β>1/10: macrophotographing

β≦1/200 landscape photographing

1/40≧β>1/100: figure photographing

An intermediate magnification can not be classified into any of thecases above. Further, when β>1/10 and β≦1/200, aperture is stopped downfrom an open aperture value to about 2EV or 3EV, resulting in animproved photographic performance. Particularly for the landscapephotographing, specific consideration is given to depth. In the case of1/40≧β1/100, the depth of focus is made shallower in photographing afigure and at the same time, the open aperture value is used as controlaperture value so as to reduce camera-shake in photographing a figure.

Further, according to the present embodiment, determination is made asto whether an object is in motion or not. When the object is moving, anAE diagram is employed in which priority is given to aperture as in theabove-mentioned diagram of AE program and shutter speed is also takeninto consideration so as not to allow blurring of the object to becaused by the movement.

In FIG. 13A, film sensitivity SV is read, magnification β is calculatedfrom focal length f and distance information DV entered from lens, andshutter speed TVf which is very likely to cause camera-shake is foundfrom focal length f (#610 to #620). Subsequently, determination is madeas to whether detection of camera-shake is possible or not. If it ispossible, the detection OK flag is set. Then, since correction ofcamera-shake is possible, the above-mentioned shutter speed is set asTVf=TVf-3 so as to reduce a limit shutter speed which does not causecamera-shake. If it is not possible, nothing is done and the programproceeds to step #635 (#625 and #630). It has been known that in orderto prevent pictures from being blurred, faster one of a currentlydetermined shutter speed and the limit shutter speed may-be desirablyused. This limit shutter speed which does not cause camera-shake isreduced through the steps described above. At step #635, determinationis made as to whether lens open F value AV₀ meets AV₀ ≧5 or not (#365)When lens open F value AV₀ >5 aperture variation ΔAV is made to meetΔAV=2, and when AV₀ <5, the variation is made to meet ΔAV=3, and thenthe program proceeds to step #646. Meanwhile, brightness value BV ismade to meet BV=BV₀ +AV₀ and exposure value EV is made to meet EV=BV+SV(#646 and #647).

After exposure value EV is found, magnification β is determined (#655).When β>1/10 or β≦1/200, the program proceeds to step #670. When1/20≦β<1/40 or 1/100≧β>1/200, aperture correction amount ΔAV is changedto ΔAV/2 and then the program proceeds to step #670 (#655 to #665). Atsteps #670, shutter speed TV is found from TV=EV-(AV₀ +ΔAV). When flagFLF indicative of flash photographing has been set at step #675, theprogram proceeds to step #770. When flag FLF has not been set, theprogram proceeds to #680 where determination is made as to whether thecalculated shutter speed TV is below camera-shake causable shutter speedTVf or not (#680). If TV≦TVf, aperture AV is found by AV=EV-TVf and TVis made equal to TVf (#685 and #687).

Subsequently, determination is made as to whether AV<AV₀ stands or notfor aperture (#690) when AV<AV₀, AV is made equal to AV_(o), shutterspeed TV is set to EV-AV₀ (#700), and then the program proceeds to step#705. The calculated TV and AV are employed as control shutter speedTV_(c) and control aperture value AV_(c), determination is made onrelease lock as will be described later, and then the program returns tothe main routine (#690 to #715). When AV≧AV₀ at step #690, the programimmediately proceeds to step #705.

When TV>TVf at step #680, the program proceeds to step #717 wheredetermination is made as to whether flag MDF has been set or not, whichis to be set when camera-shake is large in determining a moving object.When it has been set, i.e., when MDF=1, or when variation ΔDF betweentwo defocus amounts is below a predetermined value, it is determinedthat the object is not moving and then the program proceeds to step#738. When flag MDF has not been set at step #717 and defocus variationΔDF is larger than the predetermined value K ΔDF, it is determined thatthe object is moving and then, aperture is found by AV=(1/2)·EV-2.5(#725). Thus, when the object is moving, the aperture value issubtracted from the predetermined value so as to set aperture to openlarger. As a result, the shutter speed is increased. Subsequently, atstep #730, determination is made as to whether aperture AV meets AV≧AV₀+ΔAV or not. When AV≧AV₀ +ΔAV, the obtained shutter speed will be lowerthan the value found by AV=AV₀ +ΔAV even if the object is in motion.Therefore, the program proceeds to step #738 where AV is made equal toAV₀ +ΔAV and then, further proceeds to step #740.

On the other hand, when AV<AV₀ +ΔAV at step #730, the program proceedsto step #731 to increase the shutter speed. At step #731, shutter speedTVd for stopping down aperture from aperture F value AV₀ is found by TVd=AV₀ +5 and shutter speed TV is found by TV=EV =AV₀ (#731 and #733).Then, determination is made as to whether the thus obtained shutterspeed is larger than TV_(d) or not (#735). When TV≧TV_(d), TV is madeequal to (1/2)·EV-2.5 (#737). When TV≧TV_(d), AV is made equal to AV₀(#736), and then the program proceeds to step #740.

The aperture value shown in FIGS. 13A to 14B is determined as AV=AV₀when TV<TV_(d). When TV<TV_(d) and AV<AV₀ +ΔAV, AV is made equal to(1/2)·EV-2.5. When AV<AV₀ +ΔAV, the aperture value is found by AV=AV₀+ΔAV. Shutter speed TV is found by TV=EV-AV.

At step #740, shutter speed TV is found by TV=EV-AV and determination ismade as to whether TV is larger than maximum shutter speed TVmax or not(#745). When TV is not larger than TVmax, the program proceeds to #705.When TV is larger than TVmax, TV is made equal to TVmax and aperturevalue AV is found again by AV=EV-TVmax. Then, determination is made asto whether aperture value AV is larger than maximum aperture value TVmaxor not (#750 to #760). If AV>AVmax, AV is made equal to AVmax and thenthe program proceeds to step #705. When AV≦AVmax, the programimmediately proceeds to step #705.

When flag FLF indicative of flash photographing has been set at step#675, the program proceeds to step 770 where determination is made as towhether shutter speed TV is equal to camera-shake causable shutter speedTVf. If TV≧TVf, determination is made as to whether the above-mentionedTVf is larger than maximum shutter speed TVx for synchronizing withflash emission or not (#770 and #775). If Tvf>Tvx, TV is made equal toTvx, and if Tv≦Tvx, TV is made equal to Tvf. Thus, a fast shutter speedwhich is least likely to cause camera-shake is set and aperture is setto open larger so that flash-light can reach farther or amount of thelight becomes small (#780 and #785). Whether it is from step #780 or#785, the program proceeds to step #790 where aperture AV is found byAV=EV-TV (#790). Subsequently, determination is made as to whether theaperture value AV found at step #795 is smaller than open aperture valueAV₀ or not. If AV<AV₀, AV is made equal to AV₀ and the program proceedsto step #705. 0n the other hand, if AV≧AV₀ at step #795, determinationis made as to whether AV is larger than maximum aperture value AVmax ornot (#805). If AV>AVmax, AV is made equal to AVmax and then the programproceeds to step #705. If AV≦AVmax at step #805, the program immediatelyproceeds to step #705. If TV>Tvf at step #770, determination is made asto whether the shutter speed TV is larger than synchronizing maximumshutter speed Tvx or not. If TV>TVx, TV is made equal to TVx and thenthe program proceeds to step #790 (#815 and #820). If TV≦TVx at step#815, the program proceeds to step #705.

In FIGS. 14A and 14B, there are shown diagrams of AE programs wherefocal length/open F value of length is 35 mm/f4 and 3200 mm/f5.6,respectively. In both diagrams, X-axis denotes values of shutter speedTV, Y-axis denotes aperture values AV, and relationship between them areshown using exposure values as parameter.

Next, the subroutine for determining release lock as shown at step #715in FIG. 13C will be described with reference to FIG. 15. Referring toFIG. 15, first, flag LELF indicative of release lock and flag FLFindicative of flash emission are reset and determination is made as towhether distance DV entered from lens is larger than 10 m or not (#830to #840). When object distance DV is larger than 10 m, it is determinedthat no figure is photographed and thus, flash is not emitted. Whenobject distance DV is larger than 10 m and control shutter speed TVc ishigher than camera-shake causable speed TVf, or when camera-shakecorrection is inhibited, or when camera-shake detection is possible(when detection OK flag is representing 1), release lock is not made butdata of display as will be described later is output, and then theprogram returns to the main routine (#845 to #855 and #865).

If at steps #845 to #855, control shutter speed TVc is undercamera-shake causable speed TVf and camera-shake detection can not bemade even though the correction inhibit mode has not been set, flag LECFfor release lock is set (#860) since there is a large possibility ofcamera-shake taking place, and then the program proceeds to step #865.

When distance DV is not larger than 10 m at step #840, the programproceeds to #870 where determination is made as to whether theexpression for object brightness BV, or BV≦2 stands or not. If BV≦2 atstep #870, the electronic flash device ST photographing is performed togive contrast to the object. A signal indicative of whether charging ofa main condenser for flash has been completed or not is entered fromflash device FL. If the charging has been completed, flag FLF indicativeof flash emission is set, potential on terminal FLOK is set to the Hlevel to allow flash emission, and then the program proceeds to step#865. On the other hand, when the charging has not been completed atstep #875, the program proceeds to step #860 where flag LECF indicativeof release lock is set. When BV>2 at step #870, photographing isperformed without using flash. Therefore, the program proceeds to step#845 and the flow following the step #845 is executed.

Now, contents displayed in the display SIO subroutine will be describedwith reference to FIGS. 16A and 16B. FIG. 16A shows contents of displayDISP₂ (FIG. 2) in finder, and FIG. 16B shows contents of externaldisplay DISP_(l) shown in FIG. 1. In the diagrams, a shows presence orabsence of release lock, and when displayed, it indicates that camera isin the released lock state. b is displayed when camera-shake correctionis not inhibited, and the same is turned on and off when thecamera-shake correction was not successfully made. c indicates thatcharging is completed for flash photographing. d, e, f and g indicatecontrol shutter speeds and aperture values. h is displayed when theangular velocity sensor is not stable, and i displays a waiting time.

When the above-mentioned AE operation is completed, the program returnsto the flow shown in FIG. 9 and determination is made as to whetherrelease switch S2 has been turned on or not (#420). When it has not beenturned on, the program proceeds to step #405. When release switch S2 hasbeen turned on at step #420, determination is made as to whether releaselock has been set or not (#425). If release lock has been set (LELF=1),the program proceeds to step #445. When release lock has not been set atstep #425 (LELF=0), exposure control is performed (#430), film is woundby one frame (#435), and the system waits for brightness measuringswitch S1 being turned off (#440). When brightness measuring switch S1is turned off at step #440, the program proceeds to step #445. Detailsof the exposure control mentioned at step 430 will be described later.At step #445, determination is made as to whether brightness measuringswitch S1 has been turned off or not. If it has been turned on, powerholding timer TA is reset to start (#450), and then the program proceedsto step #295. When brightness measuring switch S1 has been turned off atstep #445, the program proceeds to step #445 where determination is madeas to whether power holding timer TA has reached five seconds or not(#455). If the above-mentioned timer shows less than 5 seconds, theprogram proceeds to step #295. When the above-mentioned timer has gonebeyond five second at step #455, determination is made as to whether thecorrection inhibit switch has been turned off or not (#460). If it hasbeen turned on, the program proceeds to #125 (see FIG. 3) where controlis conducted to stop the operation. If correction is not inhibited atstep #460, the program proceeds to step #465 where determination is madeas to whether power holding timer TA has reached T3 (1 minute) or not.When the above-mentioned timer has not yet reached T3 at step #465,potential on terminal PW1 is set to the L level so as to turn off powersupply to the brightness measuring circuit and the like, and then thesystem waits until T3 is reached (#465 and #470). When T3 is reached,the program proceeds to step #125 shown in FIG. 3 and control isconducted to stop the operation.

Subsequently, the AE control subroutine shown at step #430 in FIG., 9will be described with reference to FIG. 17. First, detection is made asto whether the correction inhibit mode has been set or not (#890). Ifthe correction inhibit mode has not been set, the mode B (continuousmode) is selected as sensor mode of camera-shake detector BL, dataindicative thereof is output to camera-shake detector BL, and then thesystem waits for a time (10 msec) required for detector BL to enter dataof camera-shake (#891 to #895). Subsequently, to receive the data, thesystem performs data communication with camera-shake detector BL (#897).Thereafter, to lift up mirror, an unshown magnet for mirror-up is turnedon and aperture control is conducted based on control aperture valueAV_(c) (#899 and #901). Then, data of lens control mode is turned off,data communication (II) with lens is made so as to output data such ascamera-shake amount, mode and the like to lens, and then determinationis made whether or not the lifting-up of mirror has been completed ornot (#903 to #915). If the lifting-up of mirror has not been completed,data of camera-shake amount is entered from camera-shake detector BE andthen the program proceeds to step #905 where the data of camera-shakeamount is output to lens (#915). When the lifting-up of mirror has beencompleted at step #910 (S_(MUP) is ON), the program proceeds to step#920 where data is entered from camera-shake detector BL (#920).Thereafter, based on the entered data, determination is made as towhether the camera-shake amount is large or not (#925). Then reason whysuch a program is employed is as follows. The camera-shake amount isincreased due to operation of a release button and release control suchas aperture control, mirror control and the like. In order to reducecamera-shake amount at the time of exposure, the camera-shake amount atthat time is detected. When the camera-shake amount is large, release isinhibited until the amount becomes small. When it is determined at step#925 that camera-shake amount is large, data communication with lens ismade when data of the camera-shake amount is output to lens. Thus, theprogram does not return to #920 (#930 and #935) until the camera-shakeamount becomes small. When the camera-shake amount has become small atstep #925, the program proceeds to step #940 where release mode isselected for lens, and then data indicative thereof is output to length(#945). Thereafter, film sensitivity data SV is output through a D/Aconverter as analog data to a brightness adjusting circuit. Real timeT_(c) is found from control shutter speed TV_(c) =(#955), an engagementmagnet for preceding shutter curtain is turned on, and then exposuretimer T is reset to start (#950 to #960). Then, comparison is madebetween real time T_(c) and current time T to determine whether (T_(c)-T) is larger than a predetermined value K_(T) or not (#970). The timeK_(T) is a little larger those times taken for data communication withcamera-shake detector BL and lens, respectively. When T_(c) -T issmaller than K_(T), precise control of the exposure time is impossibleand thus, the program proceeds to step #975. At step #975, determinationis made as to whether exposure timer T has reached real time T_(c) ornot. When T≠T_(c), the program proceeds to #970. When T=T_(c), theprogram proceeds to step #977. If (T_(c) -T)>K_(T) at step #970, data ofcamera-shake amount is entered from camera-shake detector BL and outputas lens data, and then the program proceeds to step #975 (#971 and#973). If T=T_(c) at step #975, the program proceeds to step #977 wherean engagement magnet for trailing shutter curtain is turned off (#977).Data of camera-shake amount is entered from camera-shake detector BL andoutput to lens (#979 to #981). At this time, data communication withlens is generally allowed only one time, though it depends on travellingspeed of the trailing shutter curtain and speed of the datacommunication. Thus, even after the travelling of the trailing shuttercurtain, camera-shake correction is restricted to as small as possibleuntil exposure is completed. The system waits for the time (5 msec)taken for the traveling of the trailing shutter curtain to be completed.Thereafter, data for turning off the sensor of camera-shake detector BLis set and output to camera-shake detector BL, and then data is enteredfrom lens (#983 to #989). Based on the entered data, determination ismade as to whether or not data of camera-shake limit exists or not whichindicates whether camera-shake correction of lens has been made or not(or indicates that the correction lens has reached the correction limit)(#993). When the data of camera-shake limit exists at step #991 (whenthe data has been set), camera-shake data for display is set (#993) soas to turn on and off the designation b shown in FIG. 16A. When the dataof camera-shake limit has not been set, the above-mentioned camera-shakedata for display is reset (#995) and then the program proceeds to step#997. Thereafter, display data including the data above is output to thedisplay control circuit and the program returns to the main routine(#997).

When the correction inhibit mode has been set at step #890, no controlassociated with camera-shake correction is conducted but the othercontrol associated with, for example, data communications withcamera-shake detector and lens and exposure is done. Microcomputer μCcontrols exposure from step #1200 to #1245. However, the control adoptsonly necessary steps out of the above-described steps #891 to #977 andhas no specific relation with the present invention. Therefore,description thereof is omitted and only its diagram is given.

Referring to FIGS. 18 to 22, a circuit block diagram of camera-shakedetector BL, specific examples of the camera-shake detector, and a flowchart of the microcomputer controlling the detector will be described.

Referring to FIG. 18, camera-shake detector BL comprises, as shown inthe circuit block diagram, microcomputer μC3 which performs operation ofcamera-shake amount and data communication with microcomputer μC havingcontrol over the entire circuit block and the whole camera. Sensors Iand II are sensor portions for detecting outputs of angular velocityobtained from monitors I and II in monitor portions each comprising anangular velocity sensor. Switch SW1 is a selecting switch for selectingoutput of either one of the sensors I and II to be applied to an A/Dconverter. Transistors Tr3 and Tr4 supply power to monitors I and II andsensors I and II. One shot circuit OS continues to output H level forthe period after the power supply to the motors is started until theiroutput is stabilized.

FIG. 19 is a perspective view showing a tuning fork-shaped angularvelocity sensor used in the present invention. FIG. 20 is a blockdiagram showing a sensor portion and a monitor portion of the angularvelocity sensor. FIG. 21 is a detailed circuit diagram of FIG. 20.Meanwhile, FIGS. 19 to 21 are disclosed in U.S. Pat. No. 4,671,112.Description on the structure and circuit diagrams of the angularvelocity sensor shown in FIGS. 19 to 21 is omitted, since it has nodirect relation with contents of the present invention.

FIG. 22 is a flow chart diagram showing operation of microcomputer μC3which controls sequence of camera-shake detector BL and calculatesdetection of camera-shake amount. When voltage on terminal CSBLindicating data communication is set to the L level, the flow of CSBLshown in FIG. 22 is executed as an interruption. First, datacommunication is made one and from the obtained data, it is determinedwhether input mode has been set or not (#1005 and #1010). When inputmode has not been set, data communication is made to output data anddetermination is made as to whether the continuous mode B has beenselected as sensor mode or not (#1120). If the B mode has not beenselected as sensor mode, it is determined that continuous detection ofcamera-shake amount is not made and therefore, detection is immediatelystopped. If the B mode has been selected as sensor mode, the programproceeds to step #1065 to detect camera-shake (#1115 and #1120). Thedata output at this stage is those indicative of camera-shake correctionamount (ΔX_(BL) and ΔI_(BL)) and those indicative of magnitude of thecamera-shake.

When it is determined at step #1010 that input mode has been set, serialcommunication is made to input data. The input data at this timeincludes those indicative of ON/OFF of the angular velocity monitors, A,B and OFF of sensor mode, focal length f and object distance Dr.Subsequently, when it is determined based on the input data, that themonitors are ON, transistor Tr3 is turned on. When the monitors are OFF,transistor Tr3 is turned off, and then the program proceeds to step#1035 (#1020 to #1030). After step #1035, determination is made as tosensor mode. When the A mode has been selected as sensor mode, terminalOPI is set to the H level for a certain time. When the B mode has beenselected as sensor mode, potential on terminal PW1 is raised to the Hlevel to turn on transistor Tr2, and then the program proceeds to Step#1060 (#1035 to #1050). If transistor Tr2 is OFF at step #1055,potential on terminal PW1 is set to the L level and then the programstops (#1055). At step #1060, the system waits for the time taken tostabilize the sensors and then, the program proceeds to #1065. At step#1065, flag ISTF indicative of first time of data communication is setand a signal for setting switch SW1 to the side of sensor I is output(#1070). Thereafter, A/D conversion is started and the system waits forthe time taken for the A/D conversion, and then a signal is entered(#1075 to #1085). Subsequently, determination is made at step #1090 asto whether flag 1STF indicative of the first time has been set or not.When it has been set, the flag is reset, the switch is set to the sideof sensor II and then, the program proceeds to step #1075 where data isentered (#1105 and #1110). When flag 1 STF has not been set at step#1090, correction operation is made from the entered sensor data anddetermination is made as to whether the B mode has been selected assensor mode or not. If the B mode has been selected, the programproceeds to step #1065 since continuous detection of camera-shake isrequired. On the other hand, if the B mode has not been selected, theprogram stops (#1095 and #1100).

Meanwhile, at steps #1065 to #1110, data writing is performed twiceusing the flag indicative of the first time. This is because the data tobe written in includes those of the X direction and those of the Ydirection. Thus, this flag allows data writing to be performed twice inone flow chart.

Subsequently, the method of calculating camera-shake-amount as mentionedat step #1095 in FIG. 22 will be described. Generally, when a takinglens is inclined by Δθ, movement ΔY of object on a surface of film isgiven as follows.

    ΔY=f(1-β)·tan θ,

where f is focal length of the taking lens and β is magnification.

Now, if Δθ is small, an approximate value can be obtained by thefollowing expression.

    ΔY≈f(1-β)·Δθ

Subsequently, details of the calculation of correction amount will bedescribed below. It is assumed now that angular velocity outputs w₁ andw₂ are obtained from the two angular velocity sensors at detectiontimings Δt. Thereafter, magnification β for the used object is foundfrom AF information of the camera body and focal length information fiof the interchangeable lens. Camera-shake amounts ΔX and ΔY of theobject will be found from focal length information fi, magnification β,angular velocity outputs w₁ and w₂ and Δt by microcomputer μC in thecamera body, based on the following expressions.

    ΔX≈fi·(1-β)·w.sub.1 Δt

    ΔX≈fi·(1-β)·w.sub.2 Δt

As the magnification increases, a factor of parallel shake may becomesignificant or calculation of approximate values (ΔY=f·tanθ) may notstand.

Therefore, in order to reduce the camera-shake amount found in the caseof a large magnification, the term of (1-β) is added.

Another embodiment may be adopted where correction is not made whenmagnification is large, i.e.:

    if β<1/15, ΔY=f·tan θ

    if β≧1/15, ΔY=0.

In FIG. 23, there is shown a flow chart diagram of the correctionoperation shown at step #1095 in FIG. 22. In FIG. 23, theabove-mentioned At is found at steps #1130 to #1145. At steps #1145 to#1155, camera-shake amounts in the X and Y directions are found in themanner as described above. Meanwhile, at steps #1147 and #1148, theoutputs w₁ and w₂ from the respective sensors are multiplied bycorrection coefficients Kw₁ and Kw₂ so as to correct errors caused bydeviation of the respective angular velocity sensors. Further, at steps#1160 and #1165, determination is made as to whether the above-mentionedrespective correction amounts ΔX and ΔY are no less than a predeterminedvalue KA or not. If either is no less than KA, it is determined that thecamera-shake amount is large. If both of them are below KA, it isdetermined that the camera-shake amount is small. Then, data is set andthe program returns to the main routine.

Now, referring to FIG. 24, a the electronic flash device ST circuit willbe described. Booster circuit D/D boosts a low voltage (battery voltage)to a high voltage and stores energy in emission energy storing condenserMC through rectifying device D/S. Emission control circuit EMC startsemission of flash in response to an AND signal composed of a signaloutput when flash photographing is performed (which raises potential onthe above-mentioned FLOK terminal to the H level) and an X signal put inthe ON state when a travel of preceding shutter curtain is completed.The flash emission is stopped in response to an emission stop signalSTC.

In the above-described booster circuit D/D, boosting is done whenpotential-of boosting control signal CHST from microcomputer μC is atthe H level and a signal indicating that charging is not completed (orTr_(D) is OFF) is present.

The detection of completed charging is made by connecting a seriesconnection of a neon tube and a ladder resistance to condenser MC inparallel and connecting a transistor Tr_(D) to the rudder resistance soas to allow the transistor Tr_(D) to be turned on when the condenserreaches a predetermined voltage.

The circuit structure of lens and its connection relationship withcamera will be described with reference to FIG. 25. FIG. 25 will bedescribed in connection with the circuit of lens (zoom lens). Lensmicrocomputer LμC performs data communication with camera and controlsdriving of motor control circuits MC1 and MC2 for camera-shakecorrection. Zoom encoder ZM detects focal length of zoom lens. Distanceencoder DV indicates distance. Power is supplied through power supplyline Vcc₂ to motor control circuits MC1 and MC2 and the two motors. Forthe other circuits, power is supplied through another power supply lineV_(DD). Earth line GND2 is connected to the two motors of motor controlcircuits MC1 and MC2 having their respective pulse motors. For the othercircuits, earth line GND1 is provided.

Subsequently, switches connected to microcomputer LμC will be described.Microcomputer LμC on the side of lens has right and left correctionlimit switches S_(X1) and S_(X2) for the X direction and upper and lowercorrection limit switches S_(Y1) and S_(Y2) for the Y directionconnected thereto, which are turned on when a lens driving portionreaches the correction limits in the respective directions. TerminalCSLE is an input terminal. In response to an input signal from camera,lens microcomputer LμC executes interruption routine CSLE as will bedescribed later. Input terminals SCK and SIN are for receiving clocksignals for data transfer. Terminal SOUT is for outputting lens data.

When an interruption signal of CSLE is entered from microcomputer LμC inthe camera body to lens, the interruption routine shown in FIG. 26 isexecuted. Data of 1-byte is entered from the camera body and then, focallength f and object distance DV are read out (#2005 to #2015).

Now, the data communication will be described. The data communication isdivided into lens communication I where lens data is output to camerabody and lens communication II where data is output from camera body tolens. From the above-mentioned input data, determination is made as towhether communication I or II is to be made (#2020). If it is determinedthat output mode I has been set for lens communication, datacommunication SIO is made to output the predetermined data as describedin connection with the respective output data, data of camera-shakelimit is reset and then the microcomputer stops its operation (#2025 and#2027). In the input mode (when NO at #2020), camera-shake amounts ΔXand ΔY in the X and Y directions and a mode signal are entered from thecamera body (#2030). In response to the mode signal, if lens is to bereset, setting control is performed and then the microcomputer stops itsoperation (#2035 and #2040). If release mode has been set, lens controlis performed until an interruption is executed. Further if neither modehas been set, the microcomputer does not perform any further operation(#2030 to #2050).

Referring to FIG. 27, the subroutine of lens control shown at step #2050in FIG. 26 will be described. With reference to FIG. 27, lens correctionamount is calculated (#2090), details of which will be described below.In the interchangeable lens, ratio between movement amount ofcamera-shake correction lens (in a direction vertical to optical axis)ΔLH and movement amount of object (in a direction vertical to opticalaxis) ΔYL, or LH=ΔLH/ΔYL is stored in a ROM. When a lens having variablefocal length such as zoom lens is employed, the ratio LH is stored asinformation depending on the focal length. Further, for someinterchangeable lenses, it is stored as information depending onfocusing. Therefore, in an interchangeable lens, ratio LH is read outfrom information of focal length and distance information DV (amount offorward movement of a focus adjusting lens from infinity photographingposition) and converted into movement amounts ALX and ALY of thecorrection lens.

    ΔLX=LH(fi, DV)×ΔX

    ΔLY=LH(fi, DV)×ΔY

Ratio LH is divided into four cases as follows, depending on the type ofan employed interchangeable lens.

(1) An interchangeable lens having only a single specific ratio LH

(2) A lens having a ratio LH variable corresponding to focusing(distance):

In this case, when camera body obtains forward movement amount of thelens, data is entered from the camera.

(3) A lens having a ratio LH variable corresponding to zooming

(4) A lens having a ratio LH variable corresponding to both focusing andzooming Camera-shake amount of the next time will be estimated usingthose correction amounts ΔLX and ΔLY. Methods of the estimation will beas follows.

(i) Linear prediction control

    ΔLX.sub.1 =LH(f, DV)×ΔX.sub.-2

    ΔLX.sub.2 =LH(f, DV)×{ΔX.sub.-1 +(ΔX.sub.-1 -ΔX.sub.-2)}

    LX.sub.3 =LH(f, DV)×{ΔX.sub.1 +(ΔX.sub.1 -ΔX.sub.-1)}

(ii) Multiply ratio between camera-shake amounts of the preceding andpresent times (ΔXi)/(AXi_(i-1)) constant r and use the result as aweighing factor for the camera-shake amount of the present time takeninto consideration of the linear prediction. ##EQU1##

Since the same methods are available also in the Y direction,description thereof is not repeated. Meanwhile, the results of asimulated linear predict control performed as described in (i) above areshown in FIG. 28.

Turning back to FIG. 27, the thus obtained correction amounts ΔLX andΔLY are output to the pulse motor control circuit. This allow correctionto be made and determination is made as to whether any of correctionlimit switches Sx₁ to Sy₂ has been turned off. If any of the switcheshas been turned off, data of camera-shake limit is set to repeat thedetection of turning-off of the switches. If no switch has not beenturned off, only the detection of turned-off switches is repeated. Thisroutine continues until interruption CSLE is executed again.

Subsequently, reset control will be described. FIG. 29 is a diagramshowing driving mechanism of a correction lens. Referring to FIG. 29,the driving mechanism of correction lens comprises correction lens 11and frame 12 holding correction lens 11. Holding frame 12 is providedwith mechanical stopper 13 indicating movement limit of the correctionlens and rod 14 which is forced by holding frame 12, before holdingframe 12 gets in touch with mechanical stopper 13, into turning offlimit switch SX1. When a drive pulse motor rotates, driving portion 31rotates. Between driving portion 31 and driving shaft 30, there isprovided a ball thread. The driving shaft is provided with a V-shapedgroove and is driven in the straightforward direction led by theV-shaped groove as shown in FIG. 30. The driving takes place in therange of l as shown in the diagram. Meanwhile, the same applies also inthe Y direction and, therefore, description thereof will be omitted.Further, since mechanism has no object in the present invention, detaildescription thereof will also be omitted.

A routine of reset control in a driving mechanism of correction lensconfigured as described above is shown in FIG. 31. Referring to FIG. 31,first, a pulsed normal rotation signal is output to the circuit ofpulsed motor M1 for the X direction to drive pulse motor M1 by onepulse. The correction lens is moved in the right direction of FIG. 29and determination is made as to whether switch SX1 has been turned offor not (#2060 and #2065). When switch SX1 has not been turned off atstep #2065, the program proceeds to step #2060 to further drive pulsemotor M1 by one pulse. If switch SX1 has been turned off at step #2065,a signal for driving pulse motor M1 in the reverse direction by KNpulses is output. Thus, pulse motor M1 is rotated in the reversedirection and an initial position in the X direction is set (#2070).Then, setting of initial position in the Y direction is made.

Pulse motor M2 is rotated by one pulse and determination is made as towhether limit switch SY1 is turned off or not (#2080). If switch SY1 isnot turned off at step #2080, pulse motor M2 is driven by additional onepulse. If switch SY1 is turned off, a signal for driving pulse motor M2in the reverse direction by KN pulses is output to drive pulse motor M2in such a manner. Thus, setting of initial position is completed (#2085)and the program returns to the main routine. Meanwhile, theabove-mentioned constant KN is predetermined for the setting of initialpositions in configuring the correction mechanism.

Although the present invention has been described and illustrated indetail, it is clearly understood that the same is by way of illustrationand example only and is not to be taken by way of limitation the spiritand scope of the present invention being limited only by the terms ofthe appended claims.

What is claimed is:
 1. An interchangeable optical system interchangeablymounted to a camera body which is capable of detectingsubject-image-shake on a focal plane caused by camera-shake, saidoptical system comprising:an optical element, constituting said opticalsystem, which is movable in a direction other than optical axis of saidoptical system to correct the subject-image-shake; and means forproducing a coefficient specific to said optical system and used forconverting an amount of the subject-image-shake into an amount ofmovement of said optical element.
 2. An interchangeable optical systemaccording to claim 1, wherein the coefficient is constant.
 3. Aninterchangeable optical system according to claim 1, wherein thecoefficient is variable.
 4. An interchangeable optical system accordingto claim 3, wherein said optical system is a zoom lens and thecoefficient is changed based on a focal length of said zoom lens.
 5. Aninterchangeable optical system according to claim 3, wherein thecoefficient is changed based on a position of a focus adjusting lens ofsaid optical system.
 6. An interchangeable optical system according toclaim 1, further comprising means for producing a focal length data ofsaid optical system used for detecting the amount of thesubject-image-shake in accordance with the camera-shake.
 7. Aninterchangeable optical system according to claim 1, further comprisingmeans for calculating the amount of movement of said optical elementbased on the amount of the subject-image-shake and the producedcoefficient.
 8. An interchangeable optical system according to claim 1,wherein said optical element is movable on a plane perpendicular tooptical axis of said optical system.
 9. An interchangeable opticalsystem according to claim 1, further comprising means for driving saidoptical element so as to move in a direction other than optical axis ofsaid optical system.
 10. An interchangeable optical system according toclaim 9, wherein said driving means has a driving mechanism, having adriving shaft provided with a groove to drive the shaft in astraightforward direction, for transmitting a driving power to saidoptical element.
 11. An interchangeable optical system according toclaim 9, wherein said driving means has a limit switch which detectsthat an amount of movement of said optical element reaches apredetermined limit amount.
 12. A camera comprising:detecting means fordetecting an amount of subject-image-shake on a focal plane caused bycamera-shake; an optical system which has an optical element movable ina direction other than optical axis of said optical system to correctthe subject-image-shake; driving means for driving said optical element;producing means for producing a coefficient used for converting theamount of the subject-image-shake into an amount of movement of saidoptical element; and calculating means for calculating the amount ofmovement of said optical element based on the coefficient produced bysaid producing means and the amount of the subject-image-shake detectedby said detecting means.
 13. A camera according to claim 12, whereinsaid optical system is detachably mounted on a camera body.
 14. A cameraaccording to claim 12, wherein said optical element is movable on aplane perpendicular to optical axis of said optical system.
 15. A cameraaccording to claim 12, wherein the coefficient is a constant.
 16. Acamera according to claim 12, wherein the coefficient is variable.
 17. Acamera according to claim 16, wherein said optical system is a zoom lensand the coefficient is changed based on a focal length of said zoomlens.
 18. A camera according to claim 16, wherein the coefficient ischanged based on a position of a focus adjusting lens of said opticalsystem.
 19. A camera comprising:detecting means for detecting asubject-image-shake on a focal plane caused by camera-shake; correctingmeans for correcting the subject-image-shake on a focal plane; producingmeans for producing a data representing a magnification; comparing meansfor comparing the magnification with a predetermined value; andinhibiting means for inhibiting the correcting operation of saidcorrecting means when the magnification exceeds the predetermined value.20. A camera according to claim 19, wherein an optical system of thecamera has an optical element movable in a direction other than opticalaxis of said optical system, and said correcting means corrects thesubject-image-shake by driving the optical element.
 21. A cameraaccording to claim 20, wherein said optical system is detachably mountedon a camera body and has driving means for driving said optical element.